package com.cll.learn.rpc.common.dto;

import lombok.*;

/**
 * 描述信息:
 * 定义的远程调用的通用请求对象
 * @author CLL
 * @version 1.0
 * @date 2020/9/14 14:31
 */
@Getter
@ToString
@NoArgsConstructor
@RequiredArgsConstructor
public class RpcRequest {

    /**
     * 请求ID
     */
    @NonNull
    private String requestId;
    /**
     * 请求服务名称
     */
    @NonNull
    private String className;
    /**
     * 请求服务中的方法
     */
    @NonNull
    private String methodName;
    /**
     * 请求方法的参数的类型数组
     */
    @NonNull
    private Class<?>[] parameterTypes;
    /**
     * 请求方法的参数数组
     */
    @NonNull
    private Object[] parameters;
}